axton.data.ajax.compatibility = {
    
    compatible : function () {
        var req;
        if (!window.XMLHttpRequest) {
            try {
                req = new ActiveXObject("Msxml2.XMLHTTP60");
            } catch (e1) {
                try {
                    try {
                        req = new ActiveXObject("Msxml2.XMLHTTP");
                    } catch (e2) {
                        req = new ActiveXObject("Microsoft.XMLHTTP");
                    }
                } catch (e3) {
                    return false;
                }
            }
        }
        
        if (!axton.data.ajax.Request  || !axton.data.ajax.Queue) {
            return false;
        }
        
        return true;
    },
    
    fullCompatible : function () {
        if (axton.data.ajax.Compatible()) {
            return window.XMLHttpRequest;
        }
        return false;
    }
};